CPUのオーバークロックの基礎

高クロックは意味があるのか?

 CPUには動作周波数(動作クロック)というものがあり、多くの人にとってそのCPUの性能を考える上で最も関心を寄せる事項であろう。むしろCPUには他にカタログスペック的なものがないので、唯一の関心事といえるかもしれない。

 しかしCPUにはRISCCISCといった基礎的な違いがあり、動作周波数的に言うと到底同日には語れない。RISCプロセッサーであるDECのCPU Alphaチップは既に500MHzに達しており、だからといってPentiumII-266MHzの倍の性能が出ている訳ではない。
 また同じCISCプロセッサーでもPentium, Pentium-II, K6, 6x86MXといったアーキテクチャの違いも無視できることではない。事実6x86MXなどCyrixのCPUでは正式な(実際の)動作周波数ではなく、性能的に同一であるという意味のPentium-Rateという表現方法を用いている。
 またパソコンの性能はCPUだけで語れる訳でもない。チップセット、メモリ、二次キャッシュ、ビデオなどパソコンの性能に、特にその速度だけに絞ってみても、それを左右する要素は枚挙に暇がない。

 確かにパソコンにとってCPUの動作周波数だけが全てではない。とはいえCPUがパソコン性能の中で中心的なものであることは眼前たる事実であり、その中で動作周波数は最も重要な要素であることには変わりない。同じアーキテクチャであったり、他の条件が同じなら、やはりクロックの高いもの方がリニアに性能がいい。CyrixがPentium-Rateなどというものを用いるのも、詰まることころ動作周波数というものが非常に重要な尺度であることを証明しているようなものである。結局ユーザも、そしてそれゆえに技術者も高クロックを求めてやまない現実がそこにある。


そもそもCPUの動作周波数って何?

 CPUの動作周波数は、自動車のエンジンの最高出力などとは大分違います。エンジンの最高出力の場合,そのエンジン自身がその力を出し、またそこまでしか出せないというもので、文字通りそのエンジンが出すことができる最高の力です。ある意味で能動的な性能評価ということになります。

 一方CPUの動作周波数の場合、CPU自身が出すものではありません。外部からCPUに対して与えるものです。CPUでは周波数を自ら作り出すことはできません。こちらはどちらかというと受動的な要素ですね。

 高い周波数を発生させること自体はとても簡単です。単なる水晶発振子が作り出す特定の周波数を適当に倍増すればいいだけですから。500MHzでも1GHzでも発生させるだけなら簡単にできます。ですから誤解を恐れずに言えば、いくらでも高い周波数をCPUに与えることはできてしまうのです。

 問題はその周波数でちゃんと動くのかということで、これに突きます。CPUには動ける速度の周波数というのがあり、与えられても動けない速度があります。つまりある一定の周波数以上では、着いて来れないという状態になります。この着いて来れないというのはどういう状況なのかを説明しだすと大変なのでここでは省略します。(もしがんばってそれも勉強したい方はこちら「ICの周波数」(工事中)をどうぞ)いずれにしてもCPUには着いていける周波数というのがあり、正確には動作保証上限周波数というべきでしょう。

 まあ子供に説明するような表現をすれば、CPUが「僕はこれくらいの速度なら十分動けるから、その速度で動かしてもいいよ」というのがそのCPUの動作周波数です。


どうしてオーバークロックって可能なの?

 ところで動作を保証する訳ですから、ほぼ動ける程度では困ります。エンジンの最高出力の場合、メーカーは別に保証している訳ではないし、その出力がでなくても別段不都合はありません。どのみちそんな瞬間は殆ど無いのですからね。実際カタログ通りの出力がでるエンジンは殆どありません。しかしCPUの場合、周波数を公称したら常時その速度で動かされてしまう訳です。何時間も連続で使われるかもしれません。ですからどのような状況でも動けるような、自分の能力に対し十分余裕のある周波数を公称するはずです。いわゆるサバを読むということですね。こういうのを良くマージンを設けるなんて言いますよね。

 で、実際どれくらいのマージンを設けているかなのですが、正確なところは分かりませんが、もし製品がとても安定した性能をもっていて、固体差がない、つまり製品にばらつきがない場合はそれほど大きなマージンを設けなくても安全でしょう。しかし性能がシビアなハイテク製品の場合、小さな要素でも全体として大きな性能差の原因になるため、比較的ばらつきの大きい製品にならざるを得ません。CPUはハイテク中のハイテク製品ですから、今日の厳密な工業製品の中でもかなりばらつきの大きい製品であるようです。当然大きなマージンを設ける必要が出てきます。

 このマージンの大きさこそがCPUのオーバークロックの成功率を高めている最大の理由です。


ばらつきと製造工程

 実際Intelなどでは、Pentiumは例えば266MHzと400MHzを別の製造工程で作っている訳ではなく、それこそ450MHzも含めて、全て同じ製造工程で作られいるそうです。思ったより製造工程がおおざっぱなのに驚いた人もいるでしょう。
 そして出来上がったものを検査して、そこで300MHzに合格したものを266MHzとしてとか、500MHzの検査に合格したものを450MHzとして、ここで初めて振り分け、刻印をし出荷するのだそうです。

 つまり初めから厳密に何MHzをいくつ作ろうという計画があるのではなく、出来あがったもので、検査によって動作周波数が決まるという筋書きです。ですからよく「今はまだ350MHzは数がとれない」なんて言い方をします。

 基本的には、高い周波数の方が出来上がる可能性が低い、つまり数が少ないので、市場原理から価格が上がる。ちょうど一つの木材から、正目のきれいな材木はあまり取れないので高くなり、節のある汚い部分はたくさん取れるので、安いベニヤの材料にといったものと似たようなものです。

 同じように作りながら、266MHzでしか動かないものと400MHzで動くものが出てきてしまうのですから、相当なばらつきですよね。そのためかなりのマージンを設けて最終的な刻印がなされる訳です。

 どうです? これを聞くとなんかオーバークロックってできて当たり前のような気がしませんか?


オーバークロック耐性(ベンダー間の差)

 最近はceleronのものすごいオーバークロック耐性が話題になっている。概ねIntel CPUは耐性が高く、他の互換ベンダーのCPUは低いようである。このオーバークロック耐性の差はどこからくるのだろうか。これは取りも直さずベンダーの技術力の差だと言わざるを得ない。しかし単純に技術力高いー>オーバークロック耐性高いという図式ではなく、これにはもう少し説明が必要なようだ。

 別に互換ベンダーも、ただ単に耐性の高い製品を出荷するのは、たやすいことである。今の出荷周波数決定基準を高めるだけでいい。つまり今300MHzとして売っているようなCPUを266MHzとして出荷すればいいだけである。まあマージンを増やすという言い方でもいいかもしれない。しかし現実にはそれができない。なぜできないのか。

 そもそもマージンを設けるのは、どんな状況でも公称周波数なら問題なく動き、ベンダーとしての信用を保つためである。マージンは大きければ大きいほど安全であり信用を保てる。しかし一方でやたら大きなマージンを設けていたのでは商売にならない。動作周波数は市場価格に直結している。300MHzで動くものを200MHzで売っていたのでは、採算がとれないだろう。これは結局企業の経営戦略、企業理念、技術レベル市場状況が絡んで、微妙なバランスで決定されるはずである。

 Intel CPUのオーバークロック耐性の高さは、Intelの余裕の現われである。信用保持を重視して大き目のマージンを設けても、400MHzを大量に安定して出荷できる。それに多少低い周波数で出荷しても、高いネームバリューでそれなりの価格を設定できる。互換ベンダーには全く逆のことが言える。信用保持を多少犠牲にしてでも、マージンを小さくしないとIntelと戦えるようなものを出荷できない訳である。しかもIntelより安い価格設定をせざるを得ない。Intelが400MHzを大量に供給しているのに、AMDがいつまでも266MHzや233MHzしか供給できないのでは、市場がそっぽを向くだろう。つまりAMDは技術的にも価格的にもちょっと無理して300MHzを出荷しているのである。

 従って技術力的にはIntelとAMDは、400と266位の差があるのだが、AMDが安定性を犠牲にして、300を出荷することで市場での差が小さくなるように見せかけている訳である。市場戦略上最低限この程度の差で留めておかないと、市場が急激にIntelに傾くという分析がAMD側にあるのだろう。AMDとしても苦渋の選択なのだ。今回のK6-2の出荷にあたり、ベース95MHzの333MHzをラインナップしたあたりにこの苦渋の片鱗が伺える。私にはこれに至るまでの過程に次のようなAMD社内の営業と技術のせめぎあいが想像できる。

(営業):今度のK6-2は当然350MHzを出せるんだろうね。
(技術):いや350は歩留まりが悪くてとても安定出荷できないよ。
(営業):冗談はやめてくれ。Intelが450を出そうとしているんだぞ。
(技術):それは分かってる。でも350は無理だ。供給が滞るのも困るだろ。
(営業):そりゃそうだが、K6と同じ300では市場に「新しいCPU」だというインパクトを与えられない。
(技術):だったら350の歩留まりがよくなるまでK6-2の発表を控えるしかない。
(営業):それはもっと戦略的に不利だ。
(技術):どうしても300超がいいと言うのであれば、333なら何とかなる。
(営業):この時期に外部66で出すのか。
(技術):いや83X4だ。
(営業):それにしても今更100未満はないだろ。
(技術):CPU周波数にこだわるなら仕方ないな。
(営業):95X3.5ってのはどうだ。
(技術):なんだそれ。M/Bベンダーが怒鳴るぞ。
(営業):そこは何とか説得するさ。
(技術):んーそのへんが妥協点というところかな。

 AMDとしてもK6-2発表時に350MHzを出荷したかった違いない。しかしこれ以上マージンを小さくしたら、エラー続出でそれこそここまでやっと高めてきた信用が一夜にして崩れる。一方なかなか歩留まりが向上しない。今までもかなり供給不安定でPCベンダーに迷惑をかけており、掴みかけた客を逃しかねない。それに経営も市場も一刻も早い新CPUの登場を望んでいる。歩留まりの改善など待てない。

 こうしたギリギリの状態である。マージンが安定動作ギリギリのもので押さえられたとしても仕方のないことではなかろうか。K6の場合、ひとクラス上の周波数で動くなら御の字と思わねばなるまい。

 上記までの考察では、オーバークロック耐性という視点から見たので、実質出荷可能最高周波数が浮き彫りになった。これがIntelは400でAMDは266とかなりの開きがあるため、市場戦略上AMDはマージンを小さくせざるを得ないと言った。しかしこのことが即Intelの技術力400に対して、AMDのそれが266だとは言えない。

 たとえば300MHzという動作周波数に着眼した場合、その性能は概ねPentium-IIよりK6-2の方が優れていることが、いろいろなところで報告されているし、私の経験でも証明された。にもかかわらずPentium-II 300MHzの平均価格は現在4万円強で、K6-2のそれは2万円強である。安いということは、それは非常に重要な、いや最も重要な技術的成果なのである。今日の資本主義社会は、いいものを安くだけを追求して発展してきたのである。フェラーリを作るのも大切だが、カローラを作るのはもっと社会にとって大切だったと思う。企業としての戦略位置ポリシーの違いが製品構成の差にでているだけで、トータルな技術力という点ではもはやAMDはIntelと同等の力があると私は考えている。


オーバークロック耐性(ロットの違い)

 あとよく「このロットはオーバークロック耐性が高い」という噂が流れたりします。「ロット」というのは製造の1区切りのようなもののようですが、私もよく分かりません。ただ製造もただ無計画にのべつ幕なし行われているわけではないようで、いくつかの区切りを持っているのようで、これをロットというみたい。そしてあるロットでは突如非常にオーバークロック耐性の高い製品が出てくることがあります。

 最近ではceleronの「SL27J」というロットが非常に耐性が高く、350MHzは余裕で、400MHzも結構行けて、450MHzも出来たという報告があり、一時期秋葉などで大変話題になりました。これも理由はいろいろ取りざたされていますが、実のところよくわかりません。2次キャッシュのないことが、オーバークロックの足かせをとったと言われていましたが、最近出てきたキャッシュつきceleronも非常に耐性が高いようで、どうもceleronの異常な耐性の高さは、2次キャッシュの有無だけではないようですね。Intelの戦略かもしれない。


オーバークロックの方法

 大分、うんちくが長くなってしまいましたが、実際のオーバークロックの方法と現実の問題点にはいりましょうか。これに関しては紙面を改めましょう。こちらへどうぞ。



目次へ

















Gポイントポイ活 Amazon Yahoo 楽天

無料ホームページ 楽天モバイル[UNLIMITが今なら1円] 海外格安航空券 海外旅行保険が無料!